using System;
using System.Collections.Generic;
using System.ServiceModel;
using WcfService1.DTO;

namespace WcfService1
{
    // NOTE: You can use the "Rename" command on the "Refactor" Customer to change the interface name "ICustomerServices" in both code and config file together.
    [ServiceContract]
    public interface ICustomerServices
    {
        [OperationContract]
        List<CustomerDTO> GetList(int page, out long recordCount, string sortProperty = null, string sortType = "ASC");

        [OperationContract]
        bool Save(CustomerDTO Customer,String mode);

        [OperationContract]
        bool Delete(CustomerDTO Customer);

        [OperationContract]
        List<CustomerDTO> GetListByCriteria(Dictionary<String, Object> criteria, string expression, int page,
                                            out long recordCount);

        [OperationContract]
        List<CustomerDTO> GetAllCustomer();

        [OperationContract]
        CustomerDTO GetCustomer(string kodeCustomer);

        [OperationContract]
        List<CustomerDTO> GetCustomerList(string CustomerName);

        [OperationContract]
        void ImporCustomer(List<CustomerDTO> customers);
    }
}